package cn.gov.pbc.gd.credit.core.service.report;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.liu.jbase.ResultVo;
import com.liu.jbase.service.IBaseService;

import cn.gov.pbc.gd.credit.vo.report.ChargeVo;
import cn.gov.pbc.gd.credit.vo.report.ResChargeReportVo;
import org.apache.ibatis.annotations.Param;

public interface IReportService extends IBaseService<ResChargeReportVo, ChargeVo> {

    ResultVo<List<ResChargeReportVo>> chargeReport(ChargeVo chargeVo);

    ResultVo<List<HashMap<String,Integer>>> countReport(@Param("charge") ChargeVo chargeVo);


    ResultVo<List<HashMap<String,BigDecimal>>> feeReport(@Param("charge") ChargeVo chargeVo);
    
    public ResultVo<List<ResChargeReportVo>> chargeTotal(ChargeVo vo, HttpServletRequest request);
    
    public ResultVo<String> chargeExport(ChargeVo vo, HttpServletRequest request, HttpServletResponse response);
}
